<div :class="{ 'grid': true, 'show-paging-bar': isEnablePagingBar, 'hidden-paging-bar': !isEnablePagingBar }">
    <i-form>
        <el-table v-if="isDisplay === true"
            :default-sort="{ prop: minorSortPSDEF, order: Object.is(minorSortDir, 'ASC') ? 'ascending' : Object.is(minorSortDir, 'DESC') ? 'descending' : '' }"  
            @sort-change="onSortChange($event)"  
            :border="isDragendCol"
            :highlight-current-row ="isSingleSelect"
            :row-class-name="getRowClassName.bind(_self)"
            :cell-class-name="getCellClassName.bind(_self)"
            size="mini"
            stripe
            :height="tableHeight"
            @row-click="rowClick($event)"  
            @select-all="selectAll($event)"  
            @select="select.apply(_self, arguments)"  
            @row-class-name="onRowClassName($event)"  
            @row-dblclick="rowDBLClick($event)"  
            ref="multipleTable" :data="items" :show-header="!isHideHeader"
        >
            <template slot="empty">
                {{$t('entities.case.batchnew_grid.nodata')}} 
                <span class="quick-toolbar">
                </span>
            </template>
            <template v-if="!isSingleSelect">
                <el-table-column align="center" type="selection" :width="checkboxColWidth"></el-table-column>
            </template>
            <template v-if="getColumnState('modulename')">
                <el-table-column show-overflow-tooltip :prop="'modulename'" :label="$t('entities.case.batchnew_grid.columns.modulename')" :width="200"  :align="'left'" :sortable="'custom'">
                    <template v-slot:header="{column}">
                       <span class="column-header ">
                        {{$t('entities.case.batchnew_grid.columns.modulename')}}
                       </span>
                    </template>
                    <template v-slot="{row,column,$index}">
                        <template v-if="actualIsOpenEdit">
                            <app-form-item :error="gridItemsModel[$index][column.property].error">
                                
            <app-picker  
              :formState="viewState" 
              :data="row"
              :context="context"
              :viewparams="viewparams"
              :localContext ='{ N_ROOT_EQ:"%product%" }' 
              :localParam ='{ n_root_eq:"%product%" }' 
              :disabled="getColumnDisabled(row,column.property)" 
              name='modulename' 
              deMajorField='name'
              deKeyField='module'
              :service="service"
              :acParams="{ serviceName: 'ModuleService', interfaceName: 'FetchBugModule'}"
              valueitem='module' 
              :value="row[column.property]" 
              editortype="dropdown" 
              style="" 
              @formitemvaluechange="($event)=>{onGridItemValueChange(row,$event,$index)}">
            </app-picker>
            
                            </app-form-item>
                        </template>
                        <template v-if="!actualIsOpenEdit">
                                    <app-span
                                        name="modulename"
                                        editorType="PICKER"
            :value="row.modulename" dataType="PICKUPTEXT" 
            precision="0" 
                                    ></app-span>
                        </template>
                    </template>
                </el-table-column>
            </template>
            <template v-if="getColumnState('storyname')">
                <el-table-column show-overflow-tooltip :prop="'storyname'" :label="$t('entities.case.batchnew_grid.columns.storyname')" :width="200"  :align="'left'" :sortable="'custom'">
                    <template v-slot:header="{column}">
                       <span class="column-header ">
                        {{$t('entities.case.batchnew_grid.columns.storyname')}}
                       </span>
                    </template>
                    <template v-slot="{row,column,$index}">
                        <template v-if="actualIsOpenEdit">
                            <app-form-item :error="gridItemsModel[$index][column.property].error">
                                
            <app-picker  
              :formState="viewState" 
              :data="row"
              :context="context"
              :viewparams="viewparams"
              :localContext ='{ N_PRODUCT_EQ:"%product%", N_MODULE_EQ:"%module%" }' 
              :localParam ='{ n_product_eq:"%product%", n_module_eq:"%module%" }' 
              :disabled="getColumnDisabled(row,column.property)" 
              name='storyname' 
              deMajorField='title'
              deKeyField='story'
              :service="service"
              :acParams="{ serviceName: 'StoryService', interfaceName: 'FetchCaseStory'}"
              valueitem='story' 
              :value="row[column.property]" 
              editortype="dropdown" 
              style="" 
              @formitemvaluechange="($event)=>{onGridItemValueChange(row,$event,$index)}">
            </app-picker>
            
                            </app-form-item>
                        </template>
                        <template v-if="!actualIsOpenEdit">
                                <app-column-link
                                    deKeyField="story"
                                    :context="JSON.parse(JSON.stringify(context))"
                                    :viewparams="JSON.parse(JSON.stringify(viewparams))"
                                    :data="row"
                                    :linkview="{viewname: 'story-main-view', height: 850,width: 1400,title: $t('entities.story.views.mainview.title'),placement: 'DRAWER_TOP', isRedirectView: false,deResParameters: [
            { pathName: 'products', parameterName: 'product' },
            ]
            ,parameters: [
            { pathName: 'stories', parameterName: 'story' },
            { pathName: 'mainview', parameterName: 'mainview' }
            ]}"
                                    valueitem="story"
                                >
                                    <app-span name="storyname" editorType="PICKER" :value="row.storyname"></app-span>
                                </app-column-link>
                        </template>
                    </template>
                </el-table-column>
            </template>
            <template v-if="getColumnState('title')">
                <el-table-column show-overflow-tooltip :prop="'title'" :label="$t('entities.case.batchnew_grid.columns.title')" :min-width="500"  :align="'left'" :sortable="'custom'">
                    <template v-slot:header="{column}">
                       <span class="column-header ">
                        {{$t('entities.case.batchnew_grid.columns.title')}}
                       </span>
                    </template>
                    <template v-slot="{row,column,$index}">
                        <template v-if="actualIsOpenEdit">
                            <app-form-item :error="gridItemsModel[$index][column.property].error">
                                <input-box 
                
                :disabled="getColumnDisabled(row,column.property)" 
                v-model="row[column.property]" 
                style=""
                type="text"
                
                
                @change="($event)=>{gridEditItemChange(row, column.property, $event, $index)}"
            ></input-box>
            
                            </app-form-item>
                        </template>
                        <template v-if="!actualIsOpenEdit">
                                <app-column-link
                                    deKeyField="case"
                                    :context="JSON.parse(JSON.stringify(context))"
                                    :viewparams="JSON.parse(JSON.stringify(viewparams))"
                                    :data="row"
                                    :linkview="{viewname: 'case-main-dashboard-view', height: 850,width: 1400,title: $t('entities.case.views.maindashboardview.title'),placement: 'DRAWER_TOP', isRedirectView: false,deResParameters: [
            { pathName: 'products', parameterName: 'product' },
            ]
            ,parameters: [
            { pathName: 'cases', parameterName: 'case' },
            { pathName: 'maindashboardview', parameterName: 'maindashboardview' }
            ]}"
                                    valueitem="srfkey"
                                >
                                    <app-span name="title" editorType="TEXTBOX" :value="row.title"></app-span>
                                </app-column-link>
                        </template>
                    </template>
                </el-table-column>
            </template>
            <template v-if="getColumnState('type')">
                <el-table-column show-overflow-tooltip :prop="'type'" :label="$t('entities.case.batchnew_grid.columns.type')" :width="130"  :align="'left'" :sortable="'custom'">
                    <template v-slot:header="{column}">
                       <span class="column-header ">
                        {{$t('entities.case.batchnew_grid.columns.type')}}
                       </span>
                    </template>
                    <template v-slot="{row,column,$index}">
                        <template v-if="actualIsOpenEdit">
                            <app-form-item :error="gridItemsModel[$index][column.property].error">
                                
            <dropdown-list 
                
                v-model="row[column.property]" 
                :disabled="getColumnDisabled(row,column.property)" 
                :data="row" 
                :context="context"
                :viewparams="viewparams" 
                :localContext='{ }' 
                :localParam='{ }' 
                tag="Testcase__type" 
                codelistType="STATIC"
                placeholder="请选择..." 
                style="" 
                @change="($event)=>{gridEditItemChange(row, column.property, $event, $index)}"
            ></dropdown-list>
            
                            </app-form-item>
                        </template>
                        <template v-if="!actualIsOpenEdit">
            <codelist :value="row.type" tag="Testcase__type" codelistType="STATIC" ></codelist>
                        </template>
                    </template>
                </el-table-column>
            </template>
            <template v-if="adaptiveState">
                <el-table-column></el-table-column>
            </template>
        </el-table>
    </i-form>
</div>